Method and computer program for verifying an incremental change to an integrated circuit design

ABSTRACT

A method and computer program product for verifying an incremental change to an integrated circuit design include receiving as input an integrated circuit design database and an engineering change order. Objects in the integrated circuit design database are identified and marked to indicate a current state of the integrated circuit design database. The engineering change order is applied to the integrated circuit design database, and the integrated circuit design database is analyzed to generate a list of incremental changes to the integrated circuit design database resulting from the engineering change order. Objects in the integrated circuit design database included in the list of incremental changes are identified and marked to distinguish objects in the integrated circuit design database that were changed from the current state. The marked integrated circuit design database distinguishing the objects that were changed from the current state is generated as output.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention is directed to the design of integrated circuits.More specifically, but without limitation thereto, the present inventionis directed to computer algorithms for ensuring that an integratedcircuit design conforms to a set of selected design rules for a selectedmanufacturing technology.

2. Description of Related Art

To ensure that an integrated circuit design meets performance andmanufacturability specifications, the integrated circuit design isgenerally subjected to a design rule check (DRC). The design rule checkapplies a set of selected design rules to the integrated circuit design.Any design rule violations are detected and reported so that theintegrated circuit design may be corrected until all the design rulesare satisfied.

SUMMARY OF THE INVENTION

In one embodiment of the present invention, a method of verifying anincremental change to an integrated circuit design includes receiving asinput an integrated circuit design database and an engineering changeorder. Objects in the integrated circuit design database are identifiedand marked to indicate a current state of the integrated circuit designdatabase. The engineering change order is applied to the integratedcircuit design database, and the integrated circuit design database isanalyzed to generate a list of incremental changes to the integratedcircuit design database resulting from the engineering change order.Objects in the integrated circuit design database included in the listof incremental changes are identified and marked to distinguish objectsin the integrated circuit design database that were changed from thecurrent state. The marked integrated circuit design databasedistinguishing the objects that were changed from the current state isgenerated as output.

In another embodiment of the present invention, a computer programproduct for verifying an incremental change to an integrated circuitdesign includes a medium for embodying a computer program for input to acomputer and a computer program embodied in the medium. The computerprogram causes the computer to perform steps that include receiving asinput an integrated circuit design database and an engineering changeorder. Objects in the integrated circuit design database are identifiedand marked to indicate a current state of the integrated circuit designdatabase. The engineering change order is applied to the integratedcircuit design database, and the integrated circuit design database isanalyzed to generate a list of incremental changes to the integratedcircuit design database resulting from the engineering change order.Objects in the integrated circuit design database included in the listof incremental changes are identified and marked to distinguish objectsin the integrated circuit design database that were changed from thecurrent state. The marked integrated circuit design databasedistinguishing the objects that were changed from the current state isgenerated as output.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is illustrated by way of example and notlimitation in the accompanying figures, in which like referencesindicate similar elements throughout the several views of the drawings,and in which:

FIG. 1 illustrates a typical computer program flow for verifying anincremental change to an integrated circuit design according to theprior art;

FIG. 2 illustrates a computer program flow for verifying an incrementalchange to an integrated circuit design according to an embodiment of thepresent invention;

FIG. 3 illustrates a flow chart for a method of identifying direct andindirect incremental changes as an example of the analysis block in FIG.2; and

FIG. 4 illustrates a flow chart of a method of verifying an incrementalchange to an integrated circuit design according to an embodiment of thepresent invention.

Elements in the figures are illustrated for simplicity and clarity andhave not necessarily been drawn to scale. For example, the dimensions ofsome elements in the figures may be exaggerated relative to otherelements to point out distinctive features in the illustratedembodiments of the present invention.

DESCRIPTION OF THE ILLUSTRATED EMBODIMENTS

The performance specifications of integrated circuits such asapplication-specific integrated circuits (ASICs) are often modifiedduring the design cycle by engineering change orders (ECOs). Adisadvantage of previous methods of design rule checking is that all ofthe design rule checks are generally applied to the entire integratedcircuit design after implementing each engineering change order, eventhough the engineering change order typically affects only a smallportion of the integrated circuit design. The repeated design rulechecks of the entire integrated circuit design for each engineeringchange order constitute a major bottleneck in the turnaround time (TAT)required to release the integrated circuit design for manufacturing. Asintegrated circuit design schedules become more aggressive, previousmethods for design rule checking become more inefficient. For example,the turnaround time for an engineering change order is typically about70 hours of computer runtime that may require a week in real time. Onthe other hand, the success of a design team depends on both its abilityto implement engineering change orders in a timely fashion and thevalidation of the changes to the integrated circuit design in accordancewith the physical design rules to ensure a high yield under typicalprocess variations that occur during manufacturing of integratedcircuits.

An engineering change order is a deliberate and explicit change to anintegrated circuit design. In general, an engineering change order alsoresults in unintended and implicit changes in the integrated circuitdesign. For convenience, deliberate changes are referred to herein asdirect incremental changes, and unintended changes are referred to asindirect incremental changes. The term “incremental” is used to indicatethe portion of the integrated circuit design that includes the direct orindirect changes.

An important feature of the present invention is that both direct andindirect incremental changes to a circuit design are identified so thatwhen the circuit design is streamed out, objects in the circuit designthat were modified by the engineering change order are distinguishedfrom objects in the circuit design that were not affected by theengineering change order. Special design rule decks may then be used inconjunction with the streamed out design to validate only the portion ofthe integrated circuit design that is affected by the incrementalchanges, resulting in a substantial reduction in turnaround timerequired to validate an integrated circuit design that has been modifiedby an engineering change order.

FIG. 1 illustrates a typical computer program flow for implementing anengineering change order according to the prior art. Shown in FIG. 1 area place and route environment 102, a design database 104, an engineeringchange order implementation block 106, a design block 108, a standardrule deck 110, and design rule check log files 112.

In FIG. 1, the place and route environment 102 contains the blocks usedin the floorplanning, routing and timing validation of the integratedcircuit design. The design database 104 contains the netlist informationdefining the cell placement and routing of cell interconnections in anintegrated circuit design, cell libraries defining the structure andperformance characteristics of the cells, and other information objectsthat are used to construct the integrated circuit design. Theengineering change order implementation block 106 communicates changesto the integrated circuit design and feedback to the circuit designervia a bi-directional interface with the design database 104. Changes tothe integrated circuit design include updates to the design database 104when cells and routing used in the integrated circuit design are added,deleted, or modified based on the type of engineering change order.

A functional engineering change order corresponds to a netlist changethat alters the function of the integrated circuit design. For example,an OR gate may be replaced with an AND gate. A timing engineering changeorder corresponds to a netlist change that alters the propagation delayof a net. For example, a buffer cell having a drive capability of 10gates may be replaced by a buffer cell having a drive capability of 100gates to reduce propagation delay in a net. Also, buffer cells may beadded in a long net to reduce propagation delay.

The design block 108 is representative of the integrated circuit designin a GDSII (generic data stream) format, which is a binaryrepresentation of the elements or objects contained in the integratedcircuit design. The place and route environment 102 supports thetranslation of the integrated circuit design physical data into a GDSIIfile. The GDSII file is used for the physical design validation, thatis, the validation of the physical design as it pertains to processrules and manufacturability for a selected technology. The standard ruledeck 110 contains a selected set of design rules, for example, maximuminterconnect length, that are applied in a design rule check to ensurethat the integrated circuit design conforms to the standards required tomeet performance and manufacturability specifications. The design rulecheck log files 112 record the results of the design rule check. If ruleviolations are detected, then the integrated circuit design is modifieduntil the selected design rules in the standard rule deck 110 aresatisfied.

A disadvantage of the method illustrated in FIG. 1 is that eachengineering change order requires performing another design rule checkon the entire integrated circuit design, which may delay release of theintegrated circuit design to manufacturing by a week or more for eachengineering change order. An important aspect of the present inventionis that only the portion of the integrated circuit design that isaffected by an engineering change order is subjected to a design rulecheck, thereby avoiding the unnecessary repetition of checking thetypically much larger portion of the integrated circuit design that isnot affected by the engineering change order.

In one embodiment of the present invention, a method of verifying anincremental change to an integrated circuit design includes steps of:

-   (a) receiving as input an integrated circuit design database;-   (b) receiving as input an engineering change order;-   (c) identifying and marking objects in the integrated circuit design    database to indicate a current state of the integrated circuit    design database;-   (d) applying the engineering change order to the integrated circuit    design database;-   (e) analyzing the integrated circuit design database to generate a    list of incremental changes to the integrated circuit design    database resulting from the engineering change order;-   (f) identifying and marking objects in the integrated circuit design    database included in the list of incremental changes to distinguish    objects in the integrated circuit design database that were changed    from the current state; and-   (g) streaming out the integrated circuit design database.

FIG. 2 illustrates a computer program flow for implementing anengineering change order according to an embodiment of the presentinvention. Shown in FIG. 2 are a design database 104, an engineeringchange order implementation block 106, a design block 108, a place androute environment 202, an object identification block 204, an analysisblock 206, a design streamout block 208, special design rule decks 210,and design rule check log files 212.

The integrated circuit design database 104 contains the netlistinformation defining the cell placement and routing of cellinterconnections in an integrated circuit design, cell librariesdefining the structure and performance characteristics of the cells, andother information objects that are used to construct the integratedcircuit design. The engineering change order implementation block 106communicates changes to the integrated circuit design database 104 andfeedback to the circuit designer via a bi-directional interface with thedesign database 104. Changes to the integrated circuit design includeupdates to the integrated circuit design database 104 when cells androuting used in the integrated circuit design are added, deleted, ormodified based on the type of engineering change order.

In FIG. 2, the place and route environment 202 has been modified toinclude the object identification block 204, the analysis block 206, andthe design streamout block 208. In the object identification block 204,all the objects in the integrated circuit design database 104 areannotated with a specific property, for example, each object in theintegrated circuit design database 104 may be annotated by the specificcharacter string “PRE_ECO” to indicate the current state of theintegrated circuit design database before implementing the engineeringchange order. The annotation is preferably made so that a computerprogram may access cells associated with the specific character stringif needed. The place and route environment 202 provides the capabilityto identify and mark cells and objects in the integrated circuit designdatabase 104. For example, a metal routing layer in the integratedcircuit design database 104 may be annotated so that a computer programmay differentiate between objects introduced by the engineering changeorder versus objects that existed before implementing the engineeringchange order.

In the analysis block 206, the direct and indirect incremental changesto the integrated circuit design resulting from the engineering changeorder are identified. Identifying the direct and indirect incrementalchanges includes, for example, identifying physical changes such asrelocation of cells in the design layout and re-routing of cellinterconnects.

The direct and indirect incremental changes to the integrated circuitdesign may be identified, for example, by comparing the new cell elementlist in the design database 104 that incorporates the engineering changeorder with the previous cell element list before the engineering changeorder.

FIG. 3 illustrates a flow chart 300 for a method of identifying directand indirect incremental changes as an example of the analysis block 206in FIG. 2.

Step 302 is the entry point of the flow chart 300.

In step 304, the integrated circuit design information is received asinput from the design database 104.

In step 306, the engineering change order information is received asinput from the engineering change order block 106.

In step 308, all new polygons that were added to the integrated circuitdesign by the engineering change order and all polygons that weredeleted from the integrated circuit design are identified from thecomparison and are included in a list of incremental changes. Polygonsare objects that represent the integrated circuit design in the GDSIIfile format. Specifically, all design components including cells androuting are translated into polygon structures wherein each polygonrepresents a portion of a cell, routing, and so on.

In step 310, all nets in the integrated circuit design that include thepolygons that were added or deleted in step 308 are added to the list ofincremental changes.

In step 312, all cells that have been relocated in the integratedcircuit design or that have changed in cell type are added to the listof incremental changes.

In step 314, all nets that include the cells that were added to the listof incremental changes in step 312 are added to the list of incrementalchanges. As an option, power nets may be excepted from being added tothe list of incremental changes.

In step 316, the list of incremental changes to the integrated circuitdesign is translated into GDSII format so that the entire integratedcircuit design may be streamed out in GDSII format with specialidentification tags marking the objects in the integrated circuit designthat have been changed as a result of the engineering change order. Thelist of incremental changes includes only the portion of the integratedcircuit design in which the function and/or timing of the integratedcircuit design was changed or may have been changed by the engineeringchange order.

Step 318 is the exit point of the flow chart 300.

In the design streamout block 208, the physical representation of theintegrated circuit design is translated into a GDSII (generic datastream) file.

The special design rule decks 210 include the design rules for thespecific process technology used by the design validation tool toperform a design rule check on the GDSII file that includes theincremental changes to the integrated circuit design from the list ofincremental changes generated by the analysis block 206. Because theincremental changes to the integrated circuit design are generally muchsmaller than the entire integrated circuit design, the number of designrules in the special design rule decks 210 may also be reduced to asubset limited to the checks and design rules required to validate onlythe incremental changes to the integrated circuit design. As a result,the design rule check may be performed using substantially less computerruntime than that required for the method illustrated in FIG. 1.

The design rule check log files 212 record any design rule violationsfound during the design rule check. If a design rule violation is found,the circuit designer may revise the integrated circuit design databaseand repeat the steps described above for the flow chart 300 until allthe design rules are satisfied.

FIG. 4 illustrates a flow chart 400 of a method of verifying anincremental change to an integrated circuit design according to anembodiment of the present invention.

Step 402 is the entry point of the flow chart 400.

In step 404, an integrated circuit design database is received as inputaccording to well-known techniques. The integrated circuit designdatabase includes the cell placement and routing information, celllibraries that define the cell timing characteristics for varioussemiconductor processes, and other information used in the integratedcircuit design.

In step 406, an engineering change order is received as input. Theengineering change order includes the netlist and cell changes to theintegrated circuit design, for example, to accommodate a change in theperformance specifications for the integrated circuit design.

In step 408, each of the objects in the integrated circuit designdatabase is marked to indicate a current state of the integrated circuitdesign database before the engineering change order. The marking may be,for example, a character string such as “PRE_ECO”.

In step 410, the engineering change order is implemented to modify theintegrated circuit design database so that the new performancespecifications may be met.

In step 412, a portion of the integrated circuit design is identified inwhich a function or timing of the integrated circuit design is changedby the engineering change order. This step may be performed, forexample, by constructing the list of incremental changes as describedabove by the analysis method described with reference to FIG. 3, or bymarking the information objects in the integrated circuit designdatabase 104 that are affected by the engineering change order topopulate a text file for post-processing. For example, all objects inthe integrated circuit design database 104 that are impacted as a resultof the engineering change order may be written out to a separate file.

In step 414, objects in the integrated circuit design database includedin the list of incremental changes are identified and marked todistinguish objects in the integrated circuit design database that werechanged from the current state. For example, the changed objects may bemarked by the character string “POST_ECO_1”.

In step 416, the integrated circuit design database is translated intoGDSII format that includes the incremental changes to the integratedcircuit design marked in a readily identifiable form and streamed out asa GDSII file. The GDSII format is an industry standard that isaccommodated by a wide variety of commercially available computerprograms for performing a design rule check.

In step 418, the GDSII file is verified by performing a design rulecheck on the GDSII file according to well-known techniques. A specialdesign rule deck is preferably used that includes only the checks andrules required for the objects of the integrated circuit design thatwere changed, in contrast to previous methods that perform a full set ofdesign rule checks on the entire integrated circuit design after eachengineering change order. Because the design rule check is performed ononly the portion of the integrated circuit design that is or may havebeen changed by the engineering change order, a substantial savings incomputer runtime is realized.

In step 420, any design rule violations are reported by the design rulecheck program, for example, a net having a length that exceeds a maximumnet length allowed by the selected design rules in the design rule deck.

In step 422, the integrated circuit design database is modified tocorrect any design rule violations, for example, by inserting a bufferin a net, until all design rule violations are satisfied.

Step 424 is the exit point of the flow chart 400.

In another embodiment of the present invention, the method of FIG. 2 maybe incorporated into a computer program product for verifying anincremental change to an integrated circuit design that includes:

-   a medium for embodying a computer program for input to a computer;    and-   a computer program embodied in the medium for causing the computer    to perform steps of:-   (a) receiving as input an integrated circuit design database;-   (b) receiving as input an engineering change order;-   (c) identifying and marking objects in the integrated circuit design    database to indicate a current state of the integrated circuit    design database;-   (d) applying the engineering change order to the integrated circuit    design database;-   (e) analyzing the integrated circuit design database to generate a    list of incremental changes to the integrated circuit design    database resulting from the engineering change order;-   (f) identifying and marking objects in the integrated circuit design    database included in the list of incremental changes to distinguish    objects in the integrated circuit design database that were changed    from the current state; and-   (g) streaming out the integrated circuit design database.

Although the method of the present invention illustrated by theflowchart descriptions above is described and shown with reference tospecific steps performed in a specific order, these steps may becombined, sub-divided, or reordered without departing from the scope ofthe claims. Unless specifically indicated herein, the order and groupingof steps is not a limitation of the present invention.

While the invention herein disclosed has been described by means ofspecific embodiments and applications thereof, numerous modificationsand variations could be made thereto by those skilled in the art withoutdeparting from the scope of the invention set forth in the followingclaims.

1. A method of verifying an incremental change to an integrated circuitdesign comprising steps of: (a) receiving as input an integrated circuitdesign database; (b) receiving as input an engineering change order; (c)identifying and marking polygons in a generic data stream file in theintegrated circuit design database to indicate a current state of theintegrated circuit design database; (d) applying the engineering changeorder to the integrated circuit design database; (e) analyzing theintegrated circuit design database to generate a list of incrementalchanges to the integrated circuit design database, the list ofincremental changes including all new polygons added to the integratedcircuit design and all polygons deleted from the integrated circuitdesign by the engineering change order; (f) adding all cells that havebeen relocated in the integrated circuit design or that have changed incell type to the list of incremental changes; (g) adding all nets thatinclude the cells that were added to the list of incremental changes instep (f) to the list of incremental changes; (h) identifying and markingpolygons in the generic data stream file in the integrated circuitdesign database included in the list of incremental changes to generatea marked integrated circuit design database that distinguishes polygonsin the generic data stream file that were changed from the currentstate; and (i) generating as output the marked integrated circuit designdatabase.
 2. The method of claim 1 wherein step (i) comprisestranslating the marked integrated circuit design database to a file ingeneric data stream format.
 3. The method of claim 2 further comprisinga step of applying a special rule deck to validate the marked integratedcircuit design database wherein the special rule deck includes onlydesign checks and rules applicable to the polygons in the generic datastream file that were changed from the current state.
 4. The method ofclaim 3 further comprising a step of identifying a design rule violationin the polygons in the generic data stream file that were changed fromthe current state.
 5. The method of claim 4 further comprising a step ofmodifying the marked integrated circuit design database to correct thedesign rule violation.
 6. A computer readable storage medium tangiblyembodying instructions for a computer that when executed by the computerimplement a method for verifying an incremental change to an integratedcircuit design, the method comprising steps of: (a) receiving as inputan integrated circuit design database; (b) receiving as input anengineering change order; (c) identifying and marking polygons in ageneric data stream file in the integrated circuit design database toindicate a current state of the integrated circuit design database; (d)applying the engineering change order to the integrated circuit designdatabase; (e) analyzing the integrated circuit design database togenerate a list of incremental changes to the integrated circuit designdatabase, the list of incremental changes including all new polygonsadded to the integrated circuit design and all polygons deleted from theintegrated circuit design by the engineering change order; (f) addingall cells that have been relocated in the integrated circuit design orthat have changed in cell type to the list of incremental changes; (g)adding all nets that include the cells that were added to the list ofincremental changes in step (f) to the list of incremental changes; (h)identifying and marking polygons in the generic data stream file in theintegrated circuit design database included in the list of incrementalchanges to generate a marked integrated circuit design database thatdistinguishes polygons in the generic data stream file that were changedfrom the current state; and (i) generating as output the markedintegrated circuit design database.
 7. The computer readable storagemedium of claim 6 wherein step (i) comprises translating the markedintegrated circuit design database to a file in generic data streamformat.
 8. The computer readable storage medium of claim 7 furthercomprising a step of applying a special rule deck to validate the markedintegrated circuit design database wherein the special rule deckincludes only design checks and rules applicable to the polygons in thegeneric data stream file that were changed from the current state. 9.The computer readable storage medium of claim 8 further comprising astep of identifying a design rule violation in the polygons in thegeneric data stream file that were changed from the current state. 10.The computer readable storage medium of claim 9 further comprising astep of modifying the marked integrated circuit design database tocorrect the design rule violation.
 11. A method of verifying anincremental change to an integrated circuit design comprising steps of:(a) receiving as input an integrated circuit design database; (b)receiving as input an engineering change order; (c) identifying andmarking polygons in a generic data stream file in the integrated circuitdesign database to indicate a current state of the integrated circuitdesign database; (d) applying the engineering change order to theintegrated circuit design database; (e) analyzing the integrated circuitdesign database to generate a list of incremental changes to theintegrated circuit design database resulting from the engineering changeorder; (f) adding all cells that have been relocated in the integratedcircuit design or that have changed in cell type to the list ofincremental changes; (g) adding all nets that include the cells thatwere added to the list of incremental changes in step (f) to the list ofincremental changes; (h) identifying and marking polygons in the genericdata stream file in the integrated circuit design database included inthe list of incremental changes to generate a marked integrated circuitdesign database that distinguishes polygons in the generic data streamfile that were changed from the current state; and (i) generating asoutput the marked integrated circuit design database.
 12. The method ofclaim 11 further comprising a step of applying a special rule deck tovalidate the marked integrated circuit design database wherein thespecial rule deck includes only design checks and rules applicable tothe polygons in the generic data stream file that were changed from thecurrent state.
 13. A computer readable storage medium tangibly embodyinginstructions for a computer that when executed by the computer implementa method for verifying an incremental change to an integrated circuitdesign, the method comprising steps of: (a) receiving as input anintegrated circuit design database; (b) receiving as input anengineering change order; (c) identifying and marking polygons in ageneric data stream file in the integrated circuit design database toindicate a current state of the integrated circuit design database; (d)applying the engineering change order to the integrated circuit designdatabase; (e) analyzing the integrated circuit design database togenerate a list of incremental changes to the integrated circuit designdatabase resulting from the engineering change order; (f) adding allcells that have been relocated in the integrated circuit design or thathave changed in cell type to the list of incremental changes; (g) addingall nets that include the cells that were added to the list ofincremental changes in step (f) to the list of incremental changes; (h)identifying and marking polygons in the generic data stream file in theintegrated circuit design database included in the list of incrementalchanges to generate a marked integrated circuit design database thatdistinguishes polygons in the generic data stream file that were changedfrom the current state; and (i) generating as output the markedintegrated circuit design database.
 14. The computer readable storagemedium of claim 13 further comprising a step of applying a special ruledeck to validate the marked integrated circuit design database whereinthe special rule deck includes only design checks and rules applicableto the polygons in the generic data stream file that were changed fromthe current state.
 15. A method of verifying an incremental change to anintegrated circuit design comprising steps of: (a) receiving as input anintegrated circuit design database; (b) receiving as input anengineering change order; (c) identifying and marking polygons in ageneric data stream file in the integrated circuit design database toindicate a current state of the integrated circuit design database; (d)applying the engineering change order to the integrated circuit designdatabase; (e) analyzing the integrated circuit design database togenerate a list of incremental changes to the integrated circuit designdatabase resulting from the engineering change order; (f) adding allcells that have been relocated in the integrated circuit design or thathave changed in cell type to the list of incremental changes; (g)identifying and marking polygons in the generic data stream file in theintegrated circuit design database included in the list of incrementalchanges to generate a marked integrated circuit design database thatdistinguishes polygons in the generic data stream file that were changedfrom the current state; and (h) generating as output the markedintegrated circuit design database.
 16. The method of claim 15 furthercomprising a step of applying a special rule deck to validate the markedintegrated circuit design database wherein the special rule deckincludes only design checks and rules applicable to the polygons in thegeneric data stream file that were changed from the current state.
 17. Acomputer readable storage medium tangibly embodying instructions for acomputer that when executed by the computer implement a method forverifying an incremental change to an integrated circuit design, themethod comprising steps of: (a) receiving as input an integrated circuitdesign database; (b) receiving as input an engineering change order; (c)identifying and marking polygons in a generic data stream file in theintegrated circuit design database to indicate a current state of theintegrated circuit design database; (d) applying the engineering changeorder to the integrated circuit design database; (e) analyzing theintegrated circuit design database to generate a list of incrementalchanges to the integrated circuit design database resulting from theengineering change order; (f) adding all cells that have been relocatedin the integrated circuit design or that have changed in cell type tothe list of incremental changes; (g) identifying and marking polygons inthe generic data stream file in the integrated circuit design databaseincluded in the list of incremental changes to generate a markedintegrated circuit design database that distinguishes polygons in thegeneric data stream file that were changed from the current state; and(h) generating as output the marked integrated circuit design database.18. The computer program product of claim 17 further comprising a stepof applying a special rule deck to validate the marked integratedcircuit design database wherein the special rule deck includes onlydesign checks and rules applicable to the polygons in the generic datastream file that were changed from the current state.
 19. A method ofverifying an incremental change to an integrated circuit designcomprising steps of: (a) receiving as input an integrated circuit designdatabase; (b) receiving as input an engineering change order; (c)identifying and marking polygons in a generic data stream file in theintegrated circuit design database to indicate a current state of theintegrated circuit design database; (d) applying the engineering changeorder to the integrated circuit design database; (e) analyzing theintegrated circuit design database to generate a list of incrementalchanges to the integrated circuit design database resulting from theengineering change order; (f) identifying and marking polygons in thegeneric data stream file in the integrated circuit design databaseincluded in the list of incremental changes to generate a markedintegrated circuit design database that distinguishes polygons in thegeneric data stream file that were changed from the current state; (g)generating as output the marked integrated circuit design databaseincluding translating the marked integrated circuit design database to afile in generic data stream format; and (h) applying a special rule deckto validate the marked integrated circuit design database wherein thespecial rule deck includes only design checks and rules applicable tothe polygons in the generic data stream file that were changed from thecurrent state.
 20. A computer readable storage medium tangibly embodyinginstructions for a computer that when executed by the computer implementa method for verifying an incremental change to an integrated circuitdesign, the method comprising steps of: (a) receiving as input anintegrated circuit design database; (b) receiving as input anengineering change order; (c) identifying and marking polygons in ageneric data stream file in the integrated circuit design database toindicate a current state of the integrated circuit design database; (d)applying the engineering change order to the integrated circuit designdatabase; (e) analyzing the integrated circuit design database togenerate a list of incremental changes to the integrated circuit designdatabase resulting from the engineering change order; (f) identifyingand marking polygons in the generic data stream file in the integratedcircuit design database included in the list of incremental changes togenerate a marked integrated circuit design database that distinguishespolygons in the generic data stream file that were changed from thecurrent state; (g) generating as output the marked integrated circuitdesign database including translating the marked integrated circuitdesign database to a file in generic data stream format; and; (h)applying a special rule deck to validate the marked integrated circuitdesign database wherein the special rule deck includes only designchecks and rules applicable to the polygons in the generic data streamfile that were changed from the current state.